home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Tech Arsenal 1
/
Tech Arsenal (Arsenal Computer).ISO
/
tek-04
/
422mods.zip
/
MACMOD09.422
< prev
next >
Wrap
Text File
|
1993-02-17
|
3KB
|
92 lines
/* MACMOD09.422 - Fix your qscan pointers */
Matthew #2 @15900 7─═2[7─3Co-SysOp7─2]7═─0
Sun Feb 14 00:20:59 1993
┌────────────────────────────────────────────────────────────────────────────┐
│ Mod Name : MACMOD09.MOD Mod Author: 1@5903 IceNET │
│ Difficulty : █▒▒▒▒▒▒▒▒▒ <CAKE> 1@5905 WWIVNet │
│ WWIV Version : 4.22 │
│ Mod Date : 02/11/93 Another of Matthew MacSuga's MACMODS │
│ Files Affected: BBS.C │
│ Description : The definitive fix for all Qscan Pointer Problems with 4.22│
└────────────────────────────────────────────────────────────────────────────┘
For the full collection of MACMODS call DATA*NORTH*WEST [IPSS] -(509) 487-5612
In assisting in the conversion of DATA*NORTH*WEST's system from WWIV 4.21a to
WWIV 4.22 an egregious error was made that left many users unable to save their
Qscan information. Though this is a drastic fix, it is vitrually certain to
fix all errors with the USER.QSC file and does so by reformatting it for all
users.
** This mod clears all qscan pointers per user. This also takes and removes
their sub scanning pointers (i.e. defaults section 5) and makes it so that all
subs are set to be scanned. This way, the user can reset all of that data.
This is a drastic fix, but should work, please email the author if you need
help **
Step 1: Load up BBS.C
Step 2: Go to void mainmenu and find a spot (right after RESETF) and put these
lines in:
/* ADD ME */ if (strcmp(s,"CLEARQSCAN")==0)
/* ADD ME */ clear_qscan();
so it looks like:
.
.
.
if (strcmp(s,"RESETF")==0) {
reset_files();
}
if (strcmp(s,"CLEARQSCAN")==0)
clear_qscan();
if ((strcmp(s,"REBOOT")==0) && (checkpw())) {
.
.
.
Step 3: Add the following to the end of BBS.C
void clean_qscan()
{
int i,i1;
outchr(12);
npr("Are you sure you wish to *ZAP* your users QSCAN structure? (y/N) ");
if (yn()) {
outchr(12);
i1=number_userrecs();
for (i=1; i<i1; i++) {
npr("Doing user %d of %d\r",i,i1);
read_qscn(i,qsc,0);
memset(qsc, 0, syscfg.qscn_len);
*qsc=999;
memset(qsc_n,0xff,((max_dirs+31)/32)*4);
memset(qsc_q,0xff,((max_subs+31)/32)*4);
write_qscn(i, qsc, 0);
}
nl();
nl();
}
Step 4: Exit to DOS and type MAKE FCNS
Step 5: Run the make utility.
Disclaimer:
I take no responsibility for this or any other mod that I write.
Where to find me:
Post Toaster AKA Matthew MacSuga
The 4th Dimension BBS
(509) 535-8275
24hrs a day @ 2400 baud
If you have any problems with this mod contact me at 1@5905 WWIVNet or 1@5903
Icenet.